extends CardState

func enter() -> void:
	# godot 工作方式： 所有子节点准备就绪，父节点才能就绪
	# 等待父节点准备就绪
	if not card_ui.is_node_ready():
		await card_ui.ready
	
	# 发射信号
	card_ui.reparent_requested.emit(card_ui)
	# 设置colorRect节点 颜色
	card_ui.color.set('color', Color('#74B57F'))
	# 设置label节点 的文本
	card_ui.state.text = "BASE"
	# 轴点偏移量 设置为 零向量 作用：在拖动卡牌时，以点击卡牌的位置作为捕捉点，而不是卡牌左上角
	card_ui.pivot_offset = Vector2.ZERO

# GUI输入事件
func on_gui_input(event: InputEvent) -> void:
	# 计算轴点偏移量 : 因为基本状态到点击状态只有单向过渡，所以这里计算较好
	if event.is_action_pressed('left_mouse'):
		card_ui.pivot_offset = card_ui.get_global_mouse_position() - card_ui.global_position
		# 发射信号，从基本状态 -》  点击状态
		transition_requested.emit(self, CardState.State.CLICKED)
